#!/bin/bash
# ==========================================================================================================
# MISULTIN - compile
# 
# >-|-|-<°>
#
# Copyright (C) 2009, Roberto Ostinelli <roberto@ostinelli.net>
# All rights reserved.
#
# BSD License
# 
# Redistribution and use in source and binary forms, with or without modification, are permitted provided
# that the following conditions are met:
#
#  * Redistributions of source code must retain the above copyright notice, this list of conditions and the
#    following disclaimer.
#  * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
#    the following disclaimer in the documentation and/or other materials provided with the distribution.
#  * Neither the name of the authors nor the names of its contributors may be used to endorse or promote
#    products derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
# PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
# ==========================================================================================================
# init
misultin_home=$(dirname $0)

# get options ":c:d: v"
while getopts ":d: h" o ; do
	case $o in
		d) # debug support
			case $OPTARG in
				error) debug="-D debug=$OPTARG";;
				warning) debug="-D debug=$OPTARG";;
				info) debug="-D debug=$OPTARG";;
				debug) debug="-D debug=$OPTARG";;
				*) echo "[ERROR]: unknown debug level $OPTARG"
				exit 1;;
			esac
			;;
			
		h) echo "Usage:	compile [options]
Options:
-d [level]  compile with debug mode: error|warning|info|debug
-h          print this help"
			exit 0
			;;
			
	esac
done

# compile in main src/ to ebin/ dir
echo -n "compiling... "
erlc ${debug} -o ${misultin_home}/ebin/ ${misultin_home}/src/*
echo "ok."
